<?php

/**
 * OrgaoExterno form.
 *
 * @package    form
 * @subpackage OrgaoExterno
 * @version    SVN: $Id: sfDoctrineFormTemplate.php 6174 2007-11-27 06:22:40Z fabien $
 */
class OrgaoExternoForm extends BaseOrgaoExternoForm
{
  public function configure()
  {
  	unset(
      $this['created_at'], $this['updated_at'], $this['deleted']
    );

	$this->widgetSchema['no_longo'] = new sfWidgetFormInput(array(), array('style' => 'width: 400px', 'class' => 'campoobrigatorio'));
	$this->widgetSchema['name'] = new sfWidgetFormInput(array(), array('style' => 'width: 200px', 'class' => 'campoobrigatorio'));
	$this->widgetSchema['sg_orgao_externo'] = new sfWidgetFormInput(array(), array('style' => 'width: 50px', 'class' => 'campoobrigatorio'));
	
	$this->widgetSchema->setLabels(array(
	  'sg_orgao_externo' => 'Sigla<sup>*</sup>',
	  'name' => 'Nome curto<sup>*</sup>',
	  'no_longo' => 'Nome completo<sup>*</sup>',
	));
	
	$this->validatorSchema['no_longo']->setMessage('required', 'Nome completo obrigatório');
	$this->validatorSchema['name']->setMessage('required', 'Nome curto obrigatório');
	$this->validatorSchema['sg_orgao_externo']->setMessage('required', 'Sigla obrigatória');

	$this->validatorSchema['no_longo']->setMessage('max_length', '"%value%" é muito grande. Limite %max_length% caracteres.');
	$this->validatorSchema['name']->setMessage('max_length', '"%value%" é muito grande. Limite %max_length% caracteres.');
	$this->validatorSchema['sg_orgao_externo']->setMessage('max_length', '"%value%" é muito grande. Limite %max_length% caracteres.');

    $this->validatorSchema->setPostValidator(
      new sfValidatorAnd(array(
        new sfValidatorDoctrineUnique(array('model' => 'OrgaoExterno', 'column' =>
			array('name')), array('invalid' => 'Esse órgão já está cadastrado.')),
			        new sfValidatorDoctrineUnique(array('model' => 'OrgaoExterno', 'column' =>
			array('sg_orgao_externo')), array('invalid' => 'Essa sigla já existe.')),
	    ))
	); 

  }
}